home *** CD-ROM | disk | FTP | other *** search
/ Just Call Me Internet / Just Call Me Internet.iso / prog / atari / m2 / cat3src / cat / catlog.i < prev    next >
Text File  |  1997-10-26  |  5KB  |  183 lines

  1. IMPLEMENTATION MODULE CatLog;
  2.  
  3. (*==============================================================*
  4.  * Modul:               CAT Import-Logfile                      *
  5.  * Autor:               Johannes G”ttker-Schnetmann             *
  6.  * erstellt am:         09.06.1991                              *
  7.  * letzte Žnderung am:  09.06.91                                *
  8.  * Version:             1.2                                     *
  9.  * Interne Version:     V#0001                                  *
  10.  *==============================================================*
  11.  
  12.  *----------------------------------------------------------------------------
  13.  * Datum    Vers. Autor  Žnderung (Arbeitsbericht)                            
  14.  *----------------------------------------------------------------------------
  15.  * 09.06.91  1.2   JGS   erste Version
  16.  *
  17.  * 13.08.91  1.216 DS    Buffergr”žen bei OpenTexfile ge„ndert, da bei 0 32 kB
  18.  *                       alloziert werden.                                                                            
  19.  *                                                                            
  20.  *                                                                            
  21.  *----------------------------------------------------------------------------
  22.  *)
  23.  
  24. IMPORT mtTextfiles;
  25. IMPORT MagicStrings;
  26. IMPORT MagicDOS;
  27. IMPORT CatTypes;
  28. IMPORT ConvertDate;
  29. FROM MTPaths IMPORT DataPath;
  30.  
  31. CONST logName = 'catlog.txt';
  32.  
  33. VAR log : mtTextfiles.TEXTFILE;
  34.     open: BOOLEAN;
  35.  
  36.  
  37. PROCEDURE WriteCard(c : LONGCARD);
  38. BEGIN
  39.   IF open THEN
  40.     mtTextfiles.WriteLongCard(log, c, 0);
  41.   END;
  42. END WriteCard;
  43.  
  44. PROCEDURE WriteInt (i : LONGINT);
  45. BEGIN
  46.   IF open THEN
  47.     mtTextfiles.WriteLongInt (log, i, 0);
  48.   END;
  49. END WriteInt;
  50.  
  51. PROCEDURE Write(c : CHAR);
  52. BEGIN
  53.   IF open THEN
  54.     mtTextfiles.WriteChar(log, c);
  55.   END;
  56. END Write;
  57.  
  58. PROCEDURE WriteString(REF str : ARRAY OF CHAR);
  59. BEGIN
  60.   IF open THEN
  61.     mtTextfiles.WriteConst(log, str);
  62.   END;
  63. END WriteString;
  64.  
  65. PROCEDURE WriteKonjString(REF str, single, plural : ARRAY OF CHAR; count: CARDINAL);
  66. BEGIN
  67.   WriteString (str);
  68.   IF count = 1 
  69.   THEN
  70.     WriteString (single)
  71.   ELSE
  72.     WriteString (plural)
  73.   END;
  74. END WriteKonjString;
  75.  
  76. PROCEDURE WriteLn();
  77. BEGIN
  78.   IF open THEN
  79.     mtTextfiles.WriteLn(log);
  80.   END;
  81. END WriteLn;
  82.  
  83. PROCEDURE WriteLine(REF str : ARRAY OF CHAR);
  84. BEGIN
  85.   WriteString(str); WriteLn();
  86. END WriteLine;
  87.  
  88. PROCEDURE WriteTearLine();
  89. BEGIN
  90.   WriteLine('--------------------------------------------------------------------------------');
  91. END WriteTearLine;
  92.  
  93. PROCEDURE WriteStringNTime(REF str : ARRAY OF CHAR);
  94. BEGIN
  95.   putTime();
  96.   WriteString(str);
  97. END WriteStringNTime;
  98.  
  99. PROCEDURE WriteLineNTime(REF str : ARRAY OF CHAR);
  100. BEGIN
  101.   WriteStringNTime(str);
  102.   WriteLn();
  103. END WriteLineNTime;
  104.  
  105. (*
  106. PROCEDURE WriteTimeCard(c : CARDINAL);
  107. BEGIN
  108.   IF c < 10 THEN
  109.     Write('0');
  110.   END;
  111.   WriteCard(c);
  112. END WriteTimeCard;
  113. *)
  114.  
  115. PROCEDURE putDate();
  116. VAR z1,z2,z3,z4 : CARDINAL;
  117.     dt  : ConvertDate.Date;
  118.     str : ARRAY [0..15] OF CHAR;
  119. BEGIN
  120.   dt := ConvertDate.UnpackDate (MagicDOS.Tgetdate());
  121.   ConvertDate.DateToText (dt, 'DD.MM.YYYY', str);
  122.   WriteString (str);
  123.   (*
  124.   z1 := MagicDOS.Tgetdate();
  125.   CardToDate(z1,  z2,z3,z4); (* Jahr, Monat, Tag        *)
  126.   WriteTimeCard(z4);
  127.   Write('.');
  128.   WriteTimeCard(z3);
  129.   Write('.');
  130.   WriteTimeCard(z2);
  131.   *)
  132. END putDate;
  133.  
  134. PROCEDURE putTime();
  135. VAR (* z1, z2, z3, z4 : CARDINAL; *)
  136.     ti: ConvertDate.Time;
  137.     str: ARRAY [0..11] OF CHAR;
  138. BEGIN
  139.   ti := ConvertDate.UnpackTime (MagicDOS.Tgettime());
  140.   ConvertDate.TimeToText (ti, 'HH:MM:SS ', str);
  141.   WriteString (str);
  142.   (*
  143.   z1 := MagicDOS.Tgettime();
  144.   CardToTime(z1,  z2,z3,z4); (* Stunde, Minute, Sekunde *)
  145.   WriteTimeCard(z2);
  146.   Write(':');
  147.   WriteTimeCard(z3);
  148.   Write(':');
  149.   WriteTimeCard(z4);
  150.   Write(' ');
  151.   *)
  152. END putTime;
  153.  
  154.  
  155. PROCEDURE OpenLog():BOOLEAN;
  156. VAR scrap : ARRAY[0..255] OF CHAR;
  157. BEGIN
  158.   MagicStrings.Assign(DataPath, scrap);
  159.   MagicStrings.Append(logName, scrap);
  160.   (* Buffergr”žen ver„ndert *)
  161.   open := mtTextfiles.OpenTextfile(scrap, mtTextfiles.WRITE, 32000, log);
  162.   putDate(); WriteString(', '); putTime();
  163.   WriteString('Log-Datei fr Einfgeprotokoll von Cat ');
  164.   WriteString(CatTypes.CatVersion);
  165.   WriteLine(' ge”ffnet');
  166.   WriteTearLine();
  167.   RETURN open
  168. END OpenLog;
  169.  
  170. PROCEDURE CloseLog();
  171. BEGIN
  172.   IF open THEN
  173.     WriteTearLine();
  174.     WriteLineNTime('Einfgen beendet');
  175.     mtTextfiles.CloseTextfile(log);
  176.     open := FALSE;
  177.   END;
  178. END CloseLog;
  179.  
  180. BEGIN
  181.   open := FALSE
  182. END CatLog.
  183.